<!--
 * @Description: 
 * @version: 
 * @Author: m
 * @LastEditors: m
-->
<template>
	<div class="wrapper">
		<!-- header部分 -->
		<header>
			<div class="icon-location-box">
				<div class="icon-location"></div>
			</div>
			<div class="location-text">
				沈阳市规划大厦
				<i class="fa fa-caret-down"></i>
			</div>
		</header>

		<!-- search部分 -->
		<!-- 
			搜索框部分（此块与search-fixed-top块宽度高度一致，用于当
			search-fixed-top块固定后，挡住下面块不要窜上去） 
		-->
		<div class="search">
			<!-- 当滚动条超过上面的定位块时，search-fixed-top块变成固定在顶部。 -->
			<div class="search-fixed-top" id="fixedBox">
				<!-- 搜索框部分中间的白框 -->
				<div class="search-box"><i class="fa fa-search"></i>搜索饿了么商家、商品名称</div>
			</div>
		</div>

		<!-- 点餐分类部分 -->
		<ul class="foodtype" @click="toBusinessList">
			<li>
				<img src="@/assets/img/dcfl01.png" />
				<p>美食</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl02.png" />
				<p>早餐</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl03.png" />
				<p>跑腿代购</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl04.png" />
				<p>汉堡披萨</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl05.png" />
				<p>甜品饮品</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl06.png" />
				<p>速食简餐</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl07.png" />
				<p>地方小吃</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl08.png" />
				<p>米粉面馆</p>
			</li>
			<li>
				<img src="@/assets/img/dcfl09.png" />
				<p>包子粥铺</p>
			</li>
			<li onclick="location.href='businessList.html'">
				<img src="@/assets/img/dcfl10.png" />
				<p>炸鸡炸串</p>
			</li>
		</ul>

		<!-- 横幅广告部分 -->
		<div class="banner">
			<h3>品质套餐</h3>
			<p>搭配齐全吃得好</p>
			<a>立即抢购 &gt;</a>
		</div>

		<!-- 超级会员部分 -->
		<div class="supermember">
			<div class="left">
				<img src="@/assets/img/super_member.png" />
				<h3>超级会员</h3>
				<p>&#8226; 每月享超值权益</p>
			</div>
			<div class="right">立即开通 &gt;</div>
		</div>

		<!-- 推荐商家部分 -->
		<div class="recommend">
			<div class="recommend-line"></div>
			<p>推荐商家</p>
			<div class="recommend-line"></div>
		</div>

		<!-- 推荐方式部分 -->
		<ul class="recommendtype">
			<li>
				综合排序
				<i class="fa fa-caret-down"></i>
			</li>
			<li>距离最近</li>
			<li>销量最高</li>
			<li>
				筛选
				<i class="fa fa-filter"></i>
			</li>
		</ul>

		<!-- 推荐商家列表部分 -->
		<van-list v-model="business_list.loading" :finished="business_list.finished" finished-text="~ 我也是有底线的！~" @load="onLoad">
			<ul class="business">
				<li v-for="(item, index) in business_list.list" :key="index" @click="toBusiness">
					<img :src="business_img[item.img]" />
					<div class="business-info">
						<div class="business-info-h">
							<h3>{{ item.name }}</h3>
							<div class="business-info-like">&#8226;</div>
						</div>
						<div class="business-info-star">
							<div class="business-info-star-left">
								<i class="fa fa-star" v-for="(item, index) in parseInt(item.score)" :key="index"></i>
								<p>{{ item.score }} 月售{{ item.num }}单</p>
							</div>
							<div class="business-info-star-right">蜂鸟专送</div>
						</div>
						<div class="business-info-delivery">
							<p>&#165;{{ item.send }}起送 | &#165;{{ item.delivery_fee }}配送</p>
							<p>{{ item.distance }}km | {{ item.time }}分钟</p>
						</div>
						<div class="business-info-explain">
							<div v-for="(tag, index) in item.tag" :key="index">{{ tag }}</div>
						</div>
						<div class="business-info-promotion" v-for="(activity, index) in item.activity" :key="index">
							<div class="business-info-promotion-left">
								<div class="business-info-promotion-left-incon" style="background-color: #f1884f" v-if="activity.type == 0">特</div>
								<div v-else class="business-info-promotion-left-incon">新</div>
								<p>{{ activity.text }}</p>
							</div>

							<div class="business-info-promotion-right" v-if="index == 0">
								<p>{{ item.activity.length }}个活动</p>
								<i class="fa fa-caret-down"></i>
							</div>
						</div>
					</div>
				</li>
			</ul>
		</van-list>

		<!-- 底部菜单部分 -->
		<ul class="footer">
			<li @click="toHome">
				<i class="fa fa-home"></i>
				<p>首页</p>
			</li>
			<li>
				<i class="fa fa-compass"></i>
				<p>发现</p>
			</li>
			<li @click="toOrderList">
				<i class="fa fa-file-text-o"></i>
				<p>订单</p>
			</li>
			<li @click="toPersonal">
				<i class="fa fa-user-o"></i>
				<p>我的</p>
			</li>
		</ul>
	</div>
</template>

<script>
import { getBusinessList } from "@/api/business.js";

export default {
	data() {
		return {
			business_img: [require("@/assets/img/sj01.png"), require("@/assets/img/sj02.png"), require("@/assets/img/sj03.png"), require("@/assets/img/sj04.png"), require("@/assets/img/sj05.png")],
			business_list: {
				list: [
					// {
					// 	name: "万家饺子（软件园E18店）",
					// 	num: "345",
					// 	score: 2.9,
					// 	send: "12",
					// 	img: 1,
					// 	delivery_fee: "2",
					// 	distance: "1.6",
					// 	time: "17",
					// 	tag: ["饺子", "面条", "抄手"],
					// 	activity: [
					// 		{ text: "新用户立减8元", type: 0 },
					// 		{ text: "新用户立减8元", type: 1 },
					// 		{ text: "新用户立减8元", type: 1 },
					// 		{ text: "新用户立减8元", type: 1 },
					// 	],
					// },
				],
				loading: false,
				finished: true,
			},
			business_post: {
				page: 0,
				limit: 3,
			},
		};
	},
	mounted() {
		this.onLoad();
	},
	methods: {
		onLoad() {
			console.log("请求!");
			getBusinessList(this.business_post)
				.then((res) => {
					if (res.data.rows.length === 0) {
						this.business_list.finished = true;
					}
					if (this.business_list.page != 1) {
						this.business_list.list = this.business_list.list.concat(res.data.rows);
					} else {
						this.business_list.list = res.data.rows;
					}

					this.business_post.page += 1;
					this.business_list.loading = false;
				})
				.catch((err) => {
					console.log(err);
					this.business_list.loading = false;
					this.business_list.finished = true;
					return this.$toast.fail("网络连接错误,请稍后重试!");
				});
		},
		toOrderList() {
			this.$router.push({ path: "/order" });
		},
		toHome() {
			this.$router.push({ path: "/" });
		},
		toBusiness() {
			this.$router.push({ path: "/business" });
		},
		toBusinessList() {
			this.$router.push({ path: "/business/list" });
		},
		toPersonal() {
			this.$router.push({ path: "/personal" });
		},
	},
};
</script>

<style lang="scss" scoped>
/****************** 总容器 ******************/
.wrapper {
	width: 100%;
	height: 100%;
}

/****************** header ******************/
.wrapper header {
	width: 100%;
	height: 12vw;
	background-color: #0097ff;

	display: flex;
	align-items: center;
}
.wrapper header .icon-location-box {
	width: 3.5vw;
	height: 3.5vw;
	margin: 0 1vw 0 3vw;
}
.wrapper header .location-text {
	font-size: 4.5vw;
	font-weight: 700;
	color: #fff;
}
.wrapper header .location-text .fa-caret-down {
	margin-left: 1vw;
}

/****************** search ******************/
.wrapper .search {
	width: 100%;
	height: 13vw;
}
.wrapper .search .search-fixed-top {
	width: 100%;
	height: 13vw;
	background-color: #0097ff;
	display: flex;
	justify-content: center;
	align-items: center;
}
.wrapper .search .search-fixed-top .search-box {
	width: 90%;
	height: 9vw;
	background-color: #fff;
	border-radius: 2px;

	display: flex;
	justify-content: center;
	align-items: center;

	font-size: 3.5vw;
	color: #aeaeae;
	font-family: "宋体";
	/*此样式是让文本选中状态无效*/
	user-select: none;
}
.wrapper .search .search-fixed-top .search-box .fa-search {
	margin-right: 1vw;
}

/****************** 点餐分类部分 ******************/
.wrapper .foodtype {
	width: 100%;
	height: 48vw;

	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	/*要使用align-content。10个子元素将自动换行为两行，而且两行作为一个整体垂直居中*/
	align-content: center;
}
.wrapper .foodtype li {
	/*一共10个子元素，通过计算，子元素宽度在16.7 ~ 20 之间，才能保证换两行*/
	width: 18vw;
	height: 20vw;

	display: flex;
	/*弹性盒子主轴方向设为column，然后仍然是垂直水平方向居中*/
	flex-direction: column;
	justify-content: center;
	align-items: center;

	user-select: none;
	cursor: pointer;
}
.wrapper .foodtype li img {
	width: 12vw;
	/*视频讲解时高度设置为12vw，实际上设置为10.3vw更佳*/
	height: 10.3vw;
}
.wrapper .foodtype li p {
	font-size: 3.2vw;
	color: #666;
}

/****************** 横幅广告部分 ******************/
.wrapper .banner {
	/**
	*设置容器宽度95%，然后水平居中，这样两边留白; 
	*这里不能用padding，因为背景图片也会覆盖padding
	*/
	width: 95%;
	margin: 0 auto;
	height: 29vw;

	/*此三个样式组合，可以保证背景图片充满整个容器*/
	background-image: url(../assets/img/index_banner.png);
	background-repeat: no-repeat;
	background-size: cover;

	box-sizing: border-box;
	padding: 2vw 6vw;
}
.wrapper .banner h3 {
	font-size: 4.2vw;
	margin-bottom: 1.2vw;
}
.wrapper .banner p {
	font-size: 3.4vw;
	color: #666;
	margin-bottom: 2.4vw;
}
.wrapper .banner a {
	font-size: 3vw;
	color: #c79060;
	font-weight: 700;
}

/****************** 超级会员部分 ******************/
.wrapper .supermember {
	/*这里也设置容器宽度95%，不能用padding，因为背景色也会充满padding*/
	width: 95%;
	margin: 0 auto;
	height: 11.5vw;
	background-color: #feedc1;
	margin-top: 1.3vw;
	border-radius: 2px;
	color: #644f1b;

	display: flex;
	justify-content: space-between;
	align-items: center;
}
.wrapper .supermember .left {
	display: flex;
	align-items: center;
	margin-left: 4vw;
	user-select: none;
}
.wrapper .supermember .left img {
	width: 6vw;
	height: 6vw;
	margin-right: 2vw;
}
.wrapper .supermember .left h3 {
	font-size: 4vw;
	margin-right: 2vw;
}
.wrapper .supermember .left p {
	font-size: 3vw;
}
.wrapper .supermember .right {
	font-size: 3vw;
	margin-right: 4vw;
	cursor: pointer;
}

/****************** 推荐商家部分 ******************/
.wrapper .recommend {
	width: 100%;
	height: 14vw;
	display: flex;
	justify-content: center;
	align-items: center;
}
.wrapper .recommend .recommend-line {
	width: 6vw;
	height: 0.2vw;
	background-color: #888;
}
.wrapper .recommend p {
	font-size: 4vw;
	margin: 0 4vw;
}

/****************** 推荐方式部分 ******************/
.wrapper .recommendtype {
	width: 100%;
	height: 5vw;
	margin-bottom: 5vw;

	display: flex;
	justify-content: space-around;
	align-items: center;
}
.wrapper .recommendtype li {
	font-size: 3.5vw;
	color: #555;
}

/****************** 推荐商家列表部分 ******************/
.wrapper .business {
	width: 100%;
	margin-bottom: 14vw;
}
.wrapper .business li {
	width: 100%;
	box-sizing: border-box;
	padding: 2.5vw;
	user-select: none;
	border-bottom: solid 1px #ddd;

	display: flex;
}
.wrapper .business li img {
	width: 18vw;
	height: 18vw;
}
.wrapper .business li .business-info {
	width: 100%;
	box-sizing: border-box;
	padding-left: 3vw;
}
.wrapper .business li .business-info .business-info-h {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 2vw;
}
.wrapper .business li .business-info .business-info-h h3 {
	font-size: 4vw;
	color: #333;
}
.wrapper .business li .business-info .business-info-h .business-info-like {
	width: 1.6vw;
	height: 3.4vw;
	background-color: #666;
	color: #fff;
	font-size: 4vw;
	margin-right: 4vw;

	display: flex;
	justify-content: center;
	align-items: center;
}
.wrapper .business li .business-info .business-info-star {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 2vw;
	font-size: 3.1vw;
}
.wrapper .business li .business-info .business-info-star .business-info-star-left {
	display: flex;
	align-items: center;
}
.wrapper .business li .business-info .business-info-star .business-info-star-left .fa-star {
	color: #fec80e;
	margin-right: 0.5vw;
}
.wrapper .business li .business-info .business-info-star .business-info-star-left p {
	color: #666;
	margin-left: 1vw;
}
.wrapper .business li .business-info .business-info-star .business-info-star-right {
	background-color: #0097ff;
	color: #fff;
	font-size: 2.4vw;
	border-radius: 2px;
	padding: 0 0.6vw;
}
.wrapper .business li .business-info .business-info-delivery {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 2vw;

	color: #666;
	font-size: 3.1vw;
}
.wrapper .business li .business-info .business-info-explain {
	display: flex;
	align-items: center;
	margin-bottom: 3vw;
}
.wrapper .business li .business-info .business-info-explain div {
	border: solid 1px #ddd;
	font-size: 2.8vw;
	color: #666;
	border-radius: 3px;
	padding: 0 0.1vw;
	margin-right: 1vw;
}
.wrapper .business li .business-info .business-info-promotion {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 1.8vw;
}
.wrapper .business li .business-info .business-info-promotion .business-info-promotion-left {
	display: flex;
	align-items: center;
}
.wrapper .business li .business-info .business-info-promotion .business-info-promotion-left .business-info-promotion-left-incon {
	width: 4vw;
	height: 4vw;
	background-color: #70bc46;
	border-radius: 3px;
	font-size: 3vw;
	color: #fff;

	display: flex;
	justify-content: center;
	align-items: center;
}
.wrapper .business li .business-info .business-info-promotion .business-info-promotion-left p {
	color: #666;
	font-size: 3vw;
	margin-left: 2vw;
}
.wrapper .business li .business-info .business-info-promotion .business-info-promotion-right {
	display: flex;
	align-items: center;
	font-size: 2.5vw;
	color: #999;
}
.wrapper .business li .business-info .business-info-promotion .business-info-promotion-right p {
	margin-right: 2vw;
}

/****************** 底部菜单部分 ******************/
.wrapper .footer {
	width: 100%;
	height: 14vw;
	border-top: solid 1px #ddd;
	background-color: #fff;

	position: fixed;
	left: 0;
	bottom: 0;

	display: flex;
	justify-content: space-around;
	align-items: center;
}
.wrapper .footer li {
	/*li本身的尺寸完全由内容撑起*/
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;

	color: #999;
	user-select: none;
	cursor: pointer;
}
.wrapper .footer li p {
	font-size: 2.8vw;
}
.wrapper .footer li i {
	font-size: 5vw;
}
</style>
